Metrics

Argo CD exposes two sets of Prometheus metrics

Application Metrics

Metrics about applications. Scraped at the argocd-metrics:8082/metrics endpoint.

  • Gauge for application health status
  • Gauge for application sync status
  • Counter for application sync history

If you use ArgoCD with many application and project creation and deletion, the metrics page will keep in cache your application and project’s history. If you are having issues because of a large number of metrics cardinality due to deleted resources, you can schedule a metrics reset to clean the history with an application controller flag. Example: --metrics-cache-expiration="24h0m0s".

API Server Metrics

Metrics about API Server API request and response activity (request totals, response codes, etc…). Scraped at the argocd-server-metrics:8083/metrics endpoint.

Prometheus Operator

If using Prometheus Operator, the following ServiceMonitor example manifests can be used. Change metadata.labels.release to the name of label selected by your Prometheus.

  1. apiVersion: monitoring.coreos.com/v1
  2. kind: ServiceMonitor
  3. metadata:
  4. name: argocd-metrics
  5. labels:
  6. release: prometheus-operator
  7. spec:
  8. selector:
  9. matchLabels:
  10. app.kubernetes.io/name: argocd-metrics
  11. endpoints:
  12. - port: metrics
  1. apiVersion: monitoring.coreos.com/v1
  2. kind: ServiceMonitor
  3. metadata:
  4. name: argocd-server-metrics
  5. labels:
  6. release: prometheus-operator
  7. spec:
  8. selector:
  9. matchLabels:
  10. app.kubernetes.io/name: argocd-server-metrics
  11. endpoints:
  12. - port: metrics
  1. apiVersion: monitoring.coreos.com/v1
  2. kind: ServiceMonitor
  3. metadata:
  4. name: argocd-repo-server-metrics
  5. labels:
  6. release: prometheus-operator
  7. spec:
  8. selector:
  9. matchLabels:
  10. app.kubernetes.io/name: argocd-repo-server-metrics
  11. endpoints:
  12. - port: metrics

Dashboards

You can find an example Grafana dashboard here or check demo instance dashboard.

dashboard